import store from "@/store";
// import { on } from 'element-ui/src/utils/dom'
import { Message } from "element-ui";

export const imgerror = {
  // el指令所在的DOM节点
  // binding指令包含的相关信息
  // 插入节点的钩子
  inserted(el, binding) {
    // console.log(el) // 图片节点
    // console.log(binding)
    // 图片有个原生的事件叫做onerror 即加载资源失败事件
    // 一旦图片加载失败，则调用这个函数
    el.onerror = function () {
      console.log("图片加载失败了");
      this.src = binding.value;
    };
  },
  // 组件更新之后的钩子
  componentUpdated(dom, options) {
    dom.src = dom.src || options.value;
  },
};

export const aaa = {
  inserted() {},
};
// Vue.directive('imgerror', imgerror)
// 按钮权限指令
export const permission = {
  // bind(el, binding, vnode) {
  //   const mark = binding.value;
  //   if (!mark) {
  //     return new Error("请输入权限标识");
  //   }
  //   const idx = store.getters.permission_btn_list.findIndex(
  //     (val) => val.permission_mark === mark
  //   );
  //   if (idx > -1) {
  //     return;
  //   }
  //   // 禁用 click 兼容性检测
  //   if (!vnode.componentInstance) {
  //     alert("v-permission 不支持用在普通dom元素");
  //     return;
  //   }
  //   if (vnode.data.nativeOn && vnode.data.nativeOn.click) {
  //     alert("v-permission 不支持 click.native");
  //     return;
  //   }
  //   // 禁用点击事件(组件）
  //   if (vnode.componentInstance) {
  //     vnode.componentInstance.$off("click");
  //   }
  //   el.onclick = function (e) {
  //     e.preventDefault();
  //     e.stopPropagation();
  //     Message.error("您无权进行此操作");
  //   };
  // },
};
